<?php
    //NO MODIFICAR ESTE ARCHIVO, POR FAVOR, SE LOS SUPLICO

    session_start();
    Header("content-type: application/x-javascript");
    require_once ("recursos/conf/cvcpa.conf");
    require_once ("recursos/librery/adodb/adodb.inc.php");
    require_once ("recursos/class/conexion.class.php");
    require_once ("recursos/class/configuracion.class.php");
    require_once ("recursos/class/empleado.class.php");
    
    $obj_configuracion = new Configuracion();
    $obj_empleado = new Empleados();
?>
MyDesktop = new Ext.app.App
({
	init :function()
        {
		Ext.QuickTips.init();
        },

	getModules : function()
        {
            return[
                <?php $obj_configuracion->load_modulos($_SESSION["idempleado"]); ?>
            ];
	},

    
    getStartConfig : function()
    {
	var win_config;
        return{
            title: 'USUARIO: <?php print $obj_empleado->get_nombre_empleado($_SESSION["idempleado"]);?>',
            height: 400,
            shadow: true,
            width: 450,
            iconCls: 'user_2',
            toolItems: 
            [
                {
                    text:'Settings',
                    iconCls:'settings',
                    scope:this,
                    handler : this.cambiar_clave
                },'-',
		{
                    text:'Salir',
                    iconCls:'logout',
                    scope:this,
                    handler : function ()
                    {
                        Ext.MessageBox.confirm('CONFIRMAR OPERACION', 'ESTA SEGURO QUE DESEA SALIR DEL SISTEMA?', function(btn)
                        {
                            if(btn === 'yes')
                            {
                                setTimeout(function()
                                {
                                    location.href='logout.php';
                                }, 2000);

                                Ext.MessageBox.show
                                ({
                                    msg: '<b>SALIENDO DEL SISTEMA</b>',
                                    width:300,
                                    wait:true,
                                    waitConfig: {interval:200},
                                    icon:'logout_sistema'
                                });
                            }
                        });  
                        
                    }
                }
                
            ]
        };
    },
    
    cambiar_clave : function()
    {
      var form_update_pass = new Ext.FormPanel
      ({
            id:'id_form_update_pass',
            labelWidth: 125,
            frame: true,
            bodyStyle:'padding:20px 25px 0',
            width: 415,
            defaults: 
            {
                width: 175,
                inputType: 'password',
                allowBlank  : false
            },
            defaultType: 'textfield',
            items: 
            [
                {
                    fieldLabel: 'Actual Password',
                    name: 'pass_old',
                    id: 'pass_old'
                },
                {
                    fieldLabel: 'Nuevo Password',
                    name: 'pass_new',
                    id: 'pass_new'
                },
                {
                    fieldLabel: 'Confirmar Password',
                    name: 'pass_new_conf',
                    id: 'pass_new_conf',
                    vtype: 'password',
                    initialPassField: 'pass_new' // id of the initial password field
                }
            ],
            buttons: 
            [
                {
                    text: 'Modificar Clave',
                    handler:this.save_update_clave
                }
            ]
        });
        
        var win_update_pass = new Ext.Window
        ({
            id:'id_win_update_pas',
            title:'ACTUALIZAR PASSWORD DE ACCESO',
            collapsible: false,
            autoScroll:true,
            border:false,
            frame:true,
            closable: true,
            modal:true,
            height:200,
            iconCls:'icon_win_update_pass',
            bodyStyle	: 'padding: 10px;',
            width:450,
            items: [form_update_pass]
         }); 
         win_update_pass.show();
         
            
    },
    
    save_update_clave:function()
    {
        if (Ext.getCmp("id_form_update_pass").getForm().isValid())
        {
           Ext.Ajax.request
           ({   
                waitMsg: 'Please wait...',
                url: 'modulos/login/save_upd_pass.php',
                params: 
                {
                    pass_old   : Ext.getCmp("pass_old").getValue(),
                    pass_new   : Ext.getCmp("pass_new").getValue()
                }, 
                success: function(response)
                {							
                    var result=eval(response.responseText);
                    switch(result)
                    {
                        case 1://el pass_old no es correcto
                            Ext.MessageBox.show
                            ({
                                    title: 'ERROR DE SISTEMA',
                                    msg: '<b>LA ACTUAL PASSWORD ES INCORRECTA, VERIFICAR VALOR.</b>',
                                    buttons: Ext.MessageBox.OK,
                                    icon: Ext.MessageBox.ERROR
                            });
                            break;		

                        case 2://todo esta correcto y se actualizo
                            setTimeout(function()
                            {
                                location.href='./';
                            }, 3000);

                            Ext.MessageBox.show
                            ({
                                  title: 'OPERACION CORRECTA',  
                                  msg: 'EL PASSWORD DE ACCESO FUE MODIFICADO, ACTUALIZANDO',
                                  width:450,
                                  wait:true,
                                  waitConfig: {interval:300},
                                  icon:'logout_sistema'
                            });
                            break;
                        default://error interno
                            Ext.MessageBox.show
                             ({
                                    title: 'ERROR DE SISTEMA',
                                    msg: '<b>OCURRIO UN ERROR AL MOMENTO DE CONECTARSE AL SISTEMA!!!</b>',
                                    buttons: Ext.MessageBox.OK,
                                    icon: Ext.MessageBox.WARNING
                            });
                            break;
                    }
                },
                failure: function(response)
                {
                     Ext.MessageBox.show
                     ({
                            title: 'ERROR DE SISTEMA',
                            msg: '<b>OCURRIO  UN ERROR CON EL SERVIDOR DEL SISTEMA!!!</b>',
                            buttons: Ext.MessageBox.OK,
                            icon: Ext.MessageBox.WARNING
                    });
                }									    
            });
        }
    }
});